var controller = {
	/**
	 * 初始化
	 */
	init : function() {
		var _this = this;
		_this.bindClick();
	},
	/**
	 * 绑定事件
	 */
	bindEvent : function() {
		var _this = this;
		_this.bindClick()
	},
	bindClick : function() {

		$(".role_selected").bind("click", function() {
			// 资源属性
			var user_id = $(this).val();
			$("#editRole").val(user_id);
			userAjax.loadRoles(user_id);
		});

		$("#editRole").bind(
				"click",
				function() {
					$("#roleDialog").modal("hide");
					// 资源属性
					var user_id = $(this).val();
					var userRoles = new Array();
					var i = 0;
					$("input[name='role_enabled']:checked").each(function() {
						var userRole = {
							user_id : user_id,
							role_id : $(this).val(),
							enabled : 1
						}
						userRoles[i] = userRole;
						i = i + 1;
					});
					if (userRoles.length == 0) {
						App.myDialog("请至少选择一个角色！", "提示");
						return;
					}
					var userRoleString = JSON.stringify(userRoles);
					ajax.addOrUpdate("/role/user/edit", userRoleString,
							"更新角色信息成功！", "更新角色信息失败！");
				});

		$("#addDialogBtn").bind("click", function() {
			$("#editUserBtn").addClass("hide");
			$("#addUserBtn").removeClass("hide");
			$("#addDialog").modal('show');
		});

		$("#addUserBtn").bind(
				"click",
				function() {
					// 资源属性
					var user_count = $("#userCount").val();
					var user_name = $("#userName").val();
					var user_password = $("#userPassword").val();
					var enabled = $("input[name='enabled']:checked").val();
					var issys = $("input[name='issys']:checked").val();
					if (enabled == 'on') {
						enabled = 1;
					} else {
						enabled = 0;
					}
					if (issys == 'on') {
						issys = 1;
					} else {
						issys = 0;
					}

					var user = {
						user_account : user_count,
						user_name : user_name,
						user_password : user_password,
						enabled : enabled,
						issys : issys
					}
					$("#addDialog").modal('hide');
					var userString = JSON.stringify(user);
					ajax.addOrUpdate("/user/add", userString, "添加用户信息成功！",
							"添加用户信息失败！");
				});

		$(".remove_user").bind("click", function() {
			// 用户ID
			var userId = $(this).val();
			ajax.delete("/user/delete?userId=" + userId, "删除用户信息成功！" ,"删除用户信息失败！");
		});

		$(".edit_user").bind("click", function() {
			// 资源属性
			var userId = $(this).val();
			$("#editUserBtn").removeClass("hide");
			$("#addUserBtn").addClass("hide");
			var user = ajax.load("/user?userId=" + userId, "获取用户详情信息失败！");
			$("#userId").val(user.user_id);
			$("#userCount").val(user.user_account);
			$("#userName").val(user.user_name);
			$("#userPassword").val(user.user_password);
			if (user.enabled == 1) {
				$("#enabled").parent().attr("aria-checked", "true");
				$("#enabled").parent().addClass("checked");
				$("#enabled").attr("checked", "checked");
			}
			if (user.issys == 1) {
				$("#issys").parent().attr("aria-checked", "true");
				$("#issys").parent().addClass("checked");
				$("#enabled").attr("checked", "checked");
			}
			// ###################
			$("#addDialog").modal('show');
		});

		$("#editUserBtn").bind(
				"click",
				function() {
					// 资源属性
					var user_id = $("#userId").val();
					var user_account = $("#userCount").val();
					var user_name = $("#userName").val();
					var user_password = $("#userPassword").val();
					var enabled = $("input[name='enabled']:checked").val();
					var issys = $("input[name='issys']:checked").val();
					if (enabled == 'on') {
						enabled = 1;
					} else {
						enabled = 0;
					}
					if (issys == 'on') {
						issys = 1;
					} else {
						issys = 0;
					}

					var user = {
						user_id : user_id,
						user_account : user_account,
						user_name : user_name,
						user_password : user_password,
						enabled : enabled,
						issys : issys
					}
					$("#addDialog").modal('hide');
					var userString = JSON.stringify(user);
					ajax.addOrUpdate("/user/edit", userString, "修改用户信息成功！", "修改用户信息失败！");
				});
	}
};
var userAjax = {
		loadRoles : function(data) {
		$
				.ajax({
					url : "/role/user/list?userId=" + data,
					type : "GET",
					async : false,
					data : data,
					dataType : "json",
					contentType : 'application/json;charset=utf-8',
					success : function(rs) {
						if (rs.success) {
							$("#roleDialog").modal("show");
							$("#menu_table").html("");
							$("#menu_table")
									.append(
											"<tr><th style='width: 60px'>操作</th><th>角色名称</th><th>角色描述</th></tr>");
							for (var i = 0; i < rs.result.length; i++) {
								var trString = "<tr><td><label><input name='role_enabled' type='checkbox' value='"
										+ rs.result[i].role_id + "'";
								if (rs.result[i].ifInuse) {
									trString = trString + " checked";

								}
								trString = trString + "></label></td><td>"
										+ rs.result[i].role_name
										+ "</td><td>"
										+ rs.result[i].role_desc
										+ "</td></tr>"

								$("#menu_table").append(trString);
							}
							$("input[type='checkbox']").iCheck({
								checkboxClass : 'icheckbox_minimal'
							});
						} else {
							App.myDialog("添加角色失败：" + rs.result, "提示");
						}
					}
				});
	}
};
$(function() {
	controller.init();
});